Welcome to Advanced Port Scanner

  • What is Advanced Port Scanner ?

  • How to use Advanced Port Scanner

  • License Agreement

  • About us


What is Advanced Port Scanner?

Advanced Port Scanner is a small, very fast, easy-to-use and robust port scanner for the Win32 platform. It is multithreaded, so on fast machines you can scan ports in very a few seconds. It has descriptions for the common ports and can perform scan on predefined port ranges. It also have powerful script-based report system, and html report is already included!


License Agreement

PLEASE READ THE FOLLOWING LICENSE AGREEMENT CAREFULLY.

YOU ARE GRANTED THE FOLLOWING LIMITED RIGHTS:

a. A non-exclusive, non-transferable right to use the "Advanced Port Scanner" software.

b. The right to distribute the software in its shareware form to third parties, provided the latter agree to accept the terms of this Agreement.

IT IS STRICTLY PROHIBITED TO:

a. Modify the software partially or completely.

b. Decompile or reverse engineer the software.

SHOULD YOU FAIL TO COMPLY WITH ANY OF THE ABOVE-MENTIONED YOUR USER'S RIGHTS WOULD BE AUTOMATICALLY TERMINATED. THIS TERMINATION WILL BE IN ADDITION TO ANY CRIMINAL, CIVIL OR OTHER REMEDIES.

LIMITED WARRANTY:

LIMITATION OF LIABILITY FOR INDIRECT DAMAGES: The author cannot be held responsible under any circumstances for damages of any character arising out of the use of this product.

This software is provided under license on an "AS IS" basis, without warranty of any kind, expressed or implied .

PROPERTY:

This software, including its code, documentation, appearance, structure, and organization is an exclusive product of the Famatech LLC company, that retains the property rights to the software, its copies, modifications, or merged parts.


About us

Company website

www.radmin.com

E-mail:

portscan@radmin.com

Support forum

www.famatech.com/support/forum


How to use Advanced Port Scanner

Select topic:

  • Program interface

  • Program options

  • Exporting scan results

  • Script language


Program interface

Main program window ( [image] illustration) allows user to select required IP addresses/ports and start scan process.

Main program window
Main program window

By default, you have one editbox to enter a target IP, two editboxes to enter the first and last ports in a range to be scanned, a checkbox to use the default port range and the scan button. If you click on the use range checkbox, the editbox for the second IP will show up so you can scan a range of IP's.

If you wish to perform a complex scan on different networks, you can select the use group of ranges checkbox. In this mode, you have additional options to add, delete and/or update groups of IP's. You can also save and load a list of IP's. The same options can be called for ports if you want to scan a complex variety of port with the maximum speed. Also, if you check "use ports ranges list", additional button will be available, called "default ports". You can press this button to add list of default ports into list of ports ranges. Use this feature if you wish to scan all default ports plus a number of your own ports.

Pressing the Scan button initiates the scan, The toolbar has another scan button that you can use at any time. When scanning, the computer's icons are shown in the report window. Clicking on a computer's icon and then its ports, displays a list of the ports being scanned on each machine.

Select IP

Enter an IP to scan. If you wish to scan an IP range (for example, 192.168.0.0-192.168.0.255), select the Use range checkbox. For a list of IP's to scan, select use group of ranges.

Use Range

Selecting this checkbox brings up a second IP edit field where you can enter the end IP of an IP range.

Scan

Pressing this button begins the scan. The action of this button changes to Stop, and if pressed, it terminates the scan. Note that multiple threads cannot be terminated instantly, so it will take a little time during which the button is named wait and is inoperable until every thread stops.

Use group of ranges

Brings up an editor to enter the IP ranges. You can specify custom ranges of IP's to scan and also save these for later use.

Select ports range

To enter a range of ports. For IP ranges, you can bring up the ports range list by selecting the use ports range list checkbox and edit your customized ports list.

Use default ports list

If you are not sure what port range to scan for and don't want to scan all 65536 ports, checkmark this checkbox and LAN Scanner will use the 67 common port numbers for the scan (FTP, HTTP, TELNET, and so on).

Toolbar button 'show alive computers'

Toggles between showing "alive" computers (that respond to pings) or not showing them.

Toolbar button 'show dead computers'

Toggles between showing 'dead' computers (that don't respond to pings) or not showing them.

Toolbar button 'show unknown computers'

Toggles between showing or not showing those computers that were not pinged yet.


Program options

'Port Scan' options window

The window ( [image] illustration) enables the user to configure following options:

'Port Scan' options window
'Port Scan' options window

Maximum Threads

This is the maximum number of threads to be used during a scan. Increasing this number results in a faster scan at the expense of taking more processor power from other running applications. There is a limit to how high you can push this number-depending on your machine speed-beyond which a scan speed will not increase, but will decrease. On Pentium-based computers 64-128 threads achieves a very quick scan. On faster PIII, PIV and Celeron computers you can set values up to 2048 threads, which results in a VERY fast scan, but also greatly hogs CPU usage.

Port scan timeout

This value defines the maximum time (in milliseconds) that LAN Scanner is to spend on each port scan. Usually, if a port is open, it takes only a few milliseconds to check it, but if the target machine is not operating (or in a few other cases), scanning ports can take up to 20-30 seconds! With a modem connection, just connecting to a remote computer might take 2-3 seconds.

We recommend that you use values less than 1000 milliseconds for fast connections (LAN, optical, ISDN) and 2000-4000 or more for slow modem connections.

Threads priority

Use this combo box to set the priority of LAN Scanner's threads. A low priority decreases scanning speed, but allows other applications to run at their full speed. A priority of realtime tells LAN Scanner to use 99% of the processor's power giving a very fast scan, but other running programs will be sluggish.

Ping computers before scanning them

Check to force LAN Scanner to ping computers before scanning them. If a computer answers a ping, it will be marked as an alive computer, otherwise a dead computer. You can configure other options depending on computer state.

Attempt to scan ports

Check to scan ports even on computers that don't respond to pings.

'Interface' options window

The window ( [image] illustration) enables the user to configure following options:

'Interface' options window
'Interface' options window

Action on double-click port

Specifies that an action will not be performed unless you double-click a port in the list

Show open ports in compact mode

If checked, open ports will be grouped. Foe example, list of ports - 1, 2, 3, 4 will became one branch that reads "1-4". Use this option to reduce visible size of scan results.

Show closed ports in compact mode

If checked, closed ports will be grouped. Foe example, list of ports - 1, 2, 3, 4 will became one branch that reads "1-4". Use this option to reduce visible size of scan results.

Use following scan target by default

By default Advanced LAN Scanner uses an IP range of class "C" networks, to which your machine's IP (for example, if your machine's IP is 25.124.200.13, the IP range of 25.124.200.1-25.124.200.255 is used). You can override this by setting this option to specify a new default range to be loaded at startup as the scan target.

'General' options window

The window ( [image] illustration) enables the user to configure following options:

'General' options window
'General' options window

Auto-load last used IP's list of startup

Last loaded IP's list (with "Load" command while "use IP list" checkbox is checked) will be automatically loaded at program startup.

Auto-load last used ports list of startup

Last loaded ports list (with "Load" command while "use port ranges list" checkbox is checked) will be automatically loaded at program startup.

'Compatibility' options window

The window ( [image] illustration) enables the user to configure following options:

'Compatibility' options window
'Compatibility' options window

Use single-threaded NetBIOS names retrival

A known problem in Windows XP WITHOUT the Service Pack is that computer names and NetBIOS names are returned incorrectly. The correct solution to this problem is to install Service Pack 1 or later, but-if you wish-you can check this option to prevent multithreaded access to NetBIOS information. This will slow a scan, but results will be correct.


Exporting scan results

'Export' window ( [image] illustration) allows user to export scan results into file.

'Export' program window
'Export' program window

As you can see, it will be list of available formats to save into. Each format actually is a script, that is defined by text file residing in your program directory. You can create this file by yourself (please, refer script language section for help about script format). Just choose format you wish to save, filename into and press "save" button - scan results will be saved.


Script Language

Script language is simple and easy-to use, but very powerful. It's used to create a text file describing each scanned computer. Script language uses tags-special commands similar to HTML. Each script file starts with the tag <!-- and ends with -->. Between these two tags goes a combination of other tags and text. For example, to output the text string "We just scanned 25 computers", where '25' is the actual number of computers scanned, you use:

We just scanned <!--int="ComputersCount"--> computers

This script tells Port Scanner to write the text string, "We just scanned computers" and the integer value, ComputersCount, the actual count of scanned computers. The tag, <!--int="ComputersCount"-->, is replaced by the number of computers scanned, in this example, "25".

A more complicated script is to organize cycles, tasks to cycle through. To get information of each computer, you would use cycles. A cycle starts with the tag, <!--cycle="ComputersCycle"--> and ends with <!--/cycle-->. All text and commands that are between these two tags are repeated for each computer scanned. There are tags for displaying specific information of these computers: name, IP address, ports, user lists, and so on. To write the number of each scanned computer into a file, for example, you would use the following script:

<!--cycle="ComputersCycle"--> This is computer number <!--int="ComputerNumber"-->\n <!--/cycle-->

If you just scanned three computers, this script writes in the output file the following:

This is computer 1
This is computer 2
This is computer 3

There are some specific tags in a script that you must use: <!--begin-->, <!--name="%s"-->, <!--ext="%s"--> and <!--end-->.

Here is a full list of script tags and their descriptions:

  • <!--begin-->

    Defines the beginning of a script module, which ends at the <!--end--> directive

  • <!--name="%s"-->

    Gives a name (the quoted string) to the script module.

  • <!--ext="%s"-->

    Defines the default extension for the script output file.

  • <!--str="%s"-->

    Inserts a string variable into the output text.

  • <!--int="%s"-->

    Inserts an integer variable into the output text.

  • <!--cycle="%s"-->

    Begins a cycle for each element in specific categories.

  • <!--/cycle-->

    Ends a cycle.

  • <!--end-->

    Defines the end of the script module.

Available cycle types and variables for each cycle:

  • int "ComputersCount"

    Number of scanned computers.

  • "ComputersCycle"

    Cycle all scanned computers.

  • "AliveComputersCycle"

    Cycle all scanned computers with "Alive" status (they responces to ping)

    • int "ComputerNumber"

      Current computer number from 1 to total.

    • int "PortsScanned"

      Number of ports scanned.

    • int "PortsOpened"

      Number of ports opened.

    • int "PortsClosed"

      Number of ports closed.

    • str "ComputerIP"

      Computer IP address.

    • "PortsCycle"

      cycle all scanned ports

      • int "PortNumber"

        Port number, from 0 to 65534.

      • str "PortStatus"

        Text string, represents port status.

    • "OpenPortsCycle"

      Cycle all open ports.

      • int "OpenPortNumber"

        Open port number, from 0 to 65534.

Here is a sample script that lists all computers and gives their ports in text form:

<!--begin-->
<!--name="simple text"-->
Computers count=<!--int="ComputersCount"-->
<!--cycle="ComputersCycle"-->
Computer number: <!--int="ComputerNumber"-->\n
Name: <!--str="ComputerName"-->
Ports ( <!--int="PortsScanned"--> scanned, <!--int="PortsOpened"--> opened, <!--int="PortsClosed"--> closed )\n

<!--cycle="PortsCycle"-->
\tPort <!--int="PortNumber"--> - <!--str="PortStatus"-->\n
<!--/cycle-->
<!--/cycle-->
<!--end-->

As you can see, cycles can be nested.